package com.wx.domain.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotEmpty;
import java.io.Serializable;
import java.util.Date;

/**
 * <p>Title:      SysPatient. </p>
 * <p>Description 患者信息表 </p>
 * <p>Copyright: Copyright (c) 2016</p>
 * <p>Company:    医百科技有限公司 </p>
 *
 * @author         yangwensheng@100doc.com.cn
 * @since      2021-03-25 10:08:31
 */
@Data
@ApiModel(value = "SysPatient")
public class SysPatientDto  implements Serializable {

	private static final long serialVersionUID = 1L;

	@ApiModelProperty(value = "患者id")
	private String id;

	/**
	 * 真实姓名
	 */
	@ApiModelProperty(value = "真实姓名")
	private String realName;


	/**
	 * 入组编号
	 */
	@ApiModelProperty(value = "入组编号(电子ICF编号)")
	private String joinCode;


	/**
	 * 联系方式
	 */
	@ApiModelProperty(value = "联系方式")
	@NotEmpty(message = "手机号不能为空")
	private String phone;

	/**
	 * 当前入组医院Id
	 */
	@ApiModelProperty(value = "当前入组医院Id")
	private String hospitalId;

	/**
	 * 入组省份Id
	 */
	@ApiModelProperty(value = "入组省份Id")
	private String joinProvinceId;
	/**
	 * 居住城市
	 */
	@ApiModelProperty(value = "入组城市Id")
	private String joinCityId;

	/**
	 * 审核状态 0：未审核(未入组) 1：已审核(已入组) 2：已脱组
	 */
	@ApiModelProperty(value = "审核状态 0：未审核(未入组) 1：已审核(已入组) 2：已脱组")
	private Integer auditStatus;

	/**
	 * 入组方式 0：护士 1：线下 
	 */
	@ApiModelProperty(value = "入组方式 0：护士 1：线下 ")
	private Integer joinType;

	/**
	 * 开始时间
	 */
	@ApiModelProperty(value = "开始时间")
	@DateTimeFormat(pattern="yyyy-MM-dd")
	@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
	private Date startJoinTime;

	/**
	 * 结束时间
	 */
	@ApiModelProperty(value = "结束时间")
	@DateTimeFormat(pattern="yyyy-MM-dd")
	@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
	private Date endJoinTime;

	/**
	 * 是否处方 0：否 1：是
	 */
	@ApiModelProperty(value = "是否处方 0：否 1：是")
	private Integer prescription;


	@ApiModelProperty(value = "所属护士")
	private String nurseId;


	@ApiModelProperty(value = "随访编号")
	private String followCode;

	/**
	 * 区域
	 */
	@ApiModelProperty(value = "区域")
	private String region;

	/**
	 * 大区
	 */
	@ApiModelProperty(value = "大区")
	private String bigRegion;

	/**
	 * 医院名称
	 */
	@ApiModelProperty(value = "医院名称")
	private String hospitalName;

	/**
	 * 原因
	 */
	@ApiModelProperty(value = "原因")
	private String changeReason;


}
